package com.hnlwh.springcloud.config;

import com.netflix.loadbalancer.IRule;
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

/**
 * @program: springcloud-study
 * @description:  自定义注册bean
 * @author: yuhui
 * @date: 2021-07-26 22:43
 */
@Configuration
public class ConfigBean {

    /*
     *  配置负载均衡实现RestTemplate
     *  Ribbon
     *  RandomRule 随机
     *  AvailabilityFilteringRule  : 会先过滤掉，跳闸、访问故障的服务  对剩下的进行轮询
     *  RetryRule   会先按照轮询获取服务，如果获取失败，则会在指定的时间进行重试
     */
    @Bean
    @LoadBalanced //Ribbon
    public RestTemplate getRestTemplate(){
        return new RestTemplate();
    }


}
